package com.yidu.ladder.delivery.domain;

import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
/**
 * 派工单实体类
 * @author lw
 *
 */
public class Workorder implements Serializable{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = -4305187701419862913L;
	/**
	 * 工单Id
	 */
	private String workBillId;
	/**
	 * 工单单号
	 */
	private String workBillNo;
	/**
	 * 业务单Id
	 */
	private String businessNoticeId;
	/**
	 * 业务单编号
	 */
	private String businessNoticeNo;
	/**
	 * 派工单类型
	 */
	private Integer billType;
	/**
	 * 取件状态
	 */
	private Integer pickState;
	/**
	 * 短信序号
	 */
	private Integer ssmNumber;
	/**
	 * 工单生成时间
	 */
	
	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	private Date workBillTime;
	/**
	 * 追单次数
	 */
	private Integer traceNum;
	/**
	 * 取派员Id
	 */
	private String staffId;
	/**
	 * 取派员名
	 */
	private String staffName;
	/**
	 * 取派员编号
	 */
	private String staffNumber;
	/**
	 * 取派员单位
	 */
	private String takeOrgName;
	/**
	 * 取派员时间
	 */
	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	private Date takeTime;
	/**
	 * 定区Id
	 */
	private String ripAreaId;
	/**
	 * 定区编码
	 */
	private String sortingCode;
	
	public Workorder() {
		super();
	}

	public Workorder(String workBillId, String workBillNo, String businessNoticeId, String businessNoticeNo,
			Integer billType, Integer pickState, Integer ssmNumber, Date workBillTime, Integer traceNum, String staffId,
			String staffName, String staffNumber, String takeOrgName, Date takeTime, String ripAreaId,
			String sortingCode) {
		super();
		this.workBillId = workBillId;
		this.workBillNo = workBillNo;
		this.businessNoticeId = businessNoticeId;
		this.businessNoticeNo = businessNoticeNo;
		this.billType = billType;
		this.pickState = pickState;
		this.ssmNumber = ssmNumber;
		this.workBillTime = workBillTime;
		this.traceNum = traceNum;
		this.staffId = staffId;
		this.staffName = staffName;
		this.staffNumber = staffNumber;
		this.takeOrgName = takeOrgName;
		this.takeTime = takeTime;
		this.ripAreaId = ripAreaId;
		this.sortingCode = sortingCode;
	}

	public String getWorkBillId() {
		return workBillId;
	}

	public void setWorkBillId(String workBillId) {
		this.workBillId = workBillId;
	}

	public String getWorkBillNo() {
		return workBillNo;
	}

	public void setWorkBillNo(String workBillNo) {
		this.workBillNo = workBillNo;
	}

	public String getBusinessNoticeId() {
		return businessNoticeId;
	}

	public void setBusinessNoticeId(String businessNoticeId) {
		this.businessNoticeId = businessNoticeId;
	}

	public String getBusinessNoticeNo() {
		return businessNoticeNo;
	}

	public void setBusinessNoticeNo(String businessNoticeNo) {
		this.businessNoticeNo = businessNoticeNo;
	}

	public Integer getBillType() {
		return billType;
	}

	public void setBillType(Integer billType) {
		this.billType = billType;
	}

	public Integer getPickState() {
		return pickState;
	}

	public void setPickState(Integer pickState) {
		this.pickState = pickState;
	}

	public Integer getSsmNumber() {
		return ssmNumber;
	}

	public void setSsmNumber(Integer ssmNumber) {
		this.ssmNumber = ssmNumber;
	}

	public Date getWorkBillTime() {
		return workBillTime;
	}

	public void setWorkBillTime(Date workBillTime) {
		this.workBillTime = workBillTime;
	}

	public Integer getTraceNum() {
		return traceNum;
	}

	public void setTraceNum(Integer traceNum) {
		this.traceNum = traceNum;
	}

	public String getStaffId() {
		return staffId;
	}

	public void setStaffId(String staffId) {
		this.staffId = staffId;
	}

	public String getStaffName() {
		return staffName;
	}

	public void setStaffName(String staffName) {
		this.staffName = staffName;
	}

	public String getStaffNumber() {
		return staffNumber;
	}

	public void setStaffNumber(String staffNumber) {
		this.staffNumber = staffNumber;
	}

	public String getTakeOrgName() {
		return takeOrgName;
	}

	public void setTakeOrgName(String takeOrgName) {
		this.takeOrgName = takeOrgName;
	}

	public Date getTakeTime() {
		return takeTime;
	}

	public void setTakeTime(Date takeTime) {
		this.takeTime = takeTime;
	}

	public String getRipAreaId() {
		return ripAreaId;
	}

	public void setRipAreaId(String ripAreaId) {
		this.ripAreaId = ripAreaId;
	}

	public String getSortingCode() {
		return sortingCode;
	}

	public void setSortingCode(String sortingCode) {
		this.sortingCode = sortingCode;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((billType == null) ? 0 : billType.hashCode());
		result = prime * result + ((businessNoticeId == null) ? 0 : businessNoticeId.hashCode());
		result = prime * result + ((businessNoticeNo == null) ? 0 : businessNoticeNo.hashCode());
		result = prime * result + ((pickState == null) ? 0 : pickState.hashCode());
		result = prime * result + ((ripAreaId == null) ? 0 : ripAreaId.hashCode());
		result = prime * result + ((sortingCode == null) ? 0 : sortingCode.hashCode());
		result = prime * result + ((ssmNumber == null) ? 0 : ssmNumber.hashCode());
		result = prime * result + ((staffId == null) ? 0 : staffId.hashCode());
		result = prime * result + ((staffName == null) ? 0 : staffName.hashCode());
		result = prime * result + ((staffNumber == null) ? 0 : staffNumber.hashCode());
		result = prime * result + ((takeOrgName == null) ? 0 : takeOrgName.hashCode());
		result = prime * result + ((takeTime == null) ? 0 : takeTime.hashCode());
		result = prime * result + ((traceNum == null) ? 0 : traceNum.hashCode());
		result = prime * result + ((workBillId == null) ? 0 : workBillId.hashCode());
		result = prime * result + ((workBillNo == null) ? 0 : workBillNo.hashCode());
		result = prime * result + ((workBillTime == null) ? 0 : workBillTime.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Workorder other = (Workorder) obj;
		if (billType == null) {
			if (other.billType != null)
				return false;
		} else if (!billType.equals(other.billType))
			return false;
		if (businessNoticeId == null) {
			if (other.businessNoticeId != null)
				return false;
		} else if (!businessNoticeId.equals(other.businessNoticeId))
			return false;
		if (businessNoticeNo == null) {
			if (other.businessNoticeNo != null)
				return false;
		} else if (!businessNoticeNo.equals(other.businessNoticeNo))
			return false;
		if (pickState == null) {
			if (other.pickState != null)
				return false;
		} else if (!pickState.equals(other.pickState))
			return false;
		if (ripAreaId == null) {
			if (other.ripAreaId != null)
				return false;
		} else if (!ripAreaId.equals(other.ripAreaId))
			return false;
		if (sortingCode == null) {
			if (other.sortingCode != null)
				return false;
		} else if (!sortingCode.equals(other.sortingCode))
			return false;
		if (ssmNumber == null) {
			if (other.ssmNumber != null)
				return false;
		} else if (!ssmNumber.equals(other.ssmNumber))
			return false;
		if (staffId == null) {
			if (other.staffId != null)
				return false;
		} else if (!staffId.equals(other.staffId))
			return false;
		if (staffName == null) {
			if (other.staffName != null)
				return false;
		} else if (!staffName.equals(other.staffName))
			return false;
		if (staffNumber == null) {
			if (other.staffNumber != null)
				return false;
		} else if (!staffNumber.equals(other.staffNumber))
			return false;
		if (takeOrgName == null) {
			if (other.takeOrgName != null)
				return false;
		} else if (!takeOrgName.equals(other.takeOrgName))
			return false;
		if (takeTime == null) {
			if (other.takeTime != null)
				return false;
		} else if (!takeTime.equals(other.takeTime))
			return false;
		if (traceNum == null) {
			if (other.traceNum != null)
				return false;
		} else if (!traceNum.equals(other.traceNum))
			return false;
		if (workBillId == null) {
			if (other.workBillId != null)
				return false;
		} else if (!workBillId.equals(other.workBillId))
			return false;
		if (workBillNo == null) {
			if (other.workBillNo != null)
				return false;
		} else if (!workBillNo.equals(other.workBillNo))
			return false;
		if (workBillTime == null) {
			if (other.workBillTime != null)
				return false;
		} else if (!workBillTime.equals(other.workBillTime))
			return false;
		return true;
	}

	@Override
	public String toString() {
		return "Workorder [workBillId=" + workBillId + ", workBillNo=" + workBillNo + ", businessNoticeId="
				+ businessNoticeId + ", businessNoticeNo=" + businessNoticeNo + ", billType=" + billType
				+ ", pickState=" + pickState + ", ssmNumber=" + ssmNumber + ", workBillTime=" + workBillTime
				+ ", traceNum=" + traceNum + ", staffId=" + staffId + ", staffName=" + staffName + ", staffNumber="
				+ staffNumber + ", takeOrgName=" + takeOrgName + ", takeTime=" + takeTime + ", ripAreaId=" + ripAreaId
				+ ", sortingCode=" + sortingCode + "]";
	}

	

}
